using System;
using System.Collections.Generic;

namespace MonoSharper
{
	public enum Classes
	{
		Unknown,
		Variable,
		Member,
		Function
	};
	
	public enum Visibility
	{
		Unknown,
		Private,
		Protected,
		Internal,
		Public
	};
	
	public class Declaration : Use
	{
		protected IList<Use> _Uses = new List<Use>();
		protected Classes _Class = Classes.Unknown;
		protected Visibility _Visibility = Visibility.Private; // I don't think we should deal with anything other than private members yet
		
		public Declaration()
		{
			_Declaration = this;
		}
	}
}
